Storage medium storing master boot record, computer system having the same and booting method of the computer system

ABSTRACT

A method and an apparatus for a storage medium implemented by at least one computer are provided. The storage medium includes a first sector to store a first master boot record including an execution code allowing the at least one computer to grasp command information and to implement a preset control according to the grasped command information, a first data storage region to store a first data file for booting, a second sector to store a second master boot record allowing the at least one computer to boot based on the first data file, a second data storage region to store a second data file for booting, and a third sector to store a third master boot record allowing the at least one computer to boot based on the second data file.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.12/276,683 filed on Nov. 24, 2008, which claims the benefit under 35U.S.C. §119(a) of a Korean patent application filed on May 21, 2008 inthe Korean Intellectual Property Office and assigned Ser. No.10-2008-0047230, the entire disclosure of each of which is herebyincorporated by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

Aspects of the present invention relate to a storage medium storing amaster boot record, a computer system having the same, and a bootingmethod of the computer system, and more particularly to a storage mediumstoring a master boot record that contains a plurality of operatingsystems, a computer system having the same, and a booting method of thecomputer system.

2. Description of the Related Art

In general, a hard disk drive of a computer system (such as a personalcomputer, a laptop computer, a workstation, a mobile phone, a personaldigital assistant, etc.) has memory addresses from a zero address to alast address, and includes one or more cylinders and a master bootrecord (MBR). The master boot record occupies one sector of the harddisk drive, and informs the computer system of a booting method andsector allocation with regard to each file. Furthermore, a user may addanother operating system to the current operating system or add anapplication to the master boot record or a certain sector of the harddisk drive to use various applications such as a security solution, arecovery solution, etc. With the solution providing additionaloperations, the solution's own master boot record may be required.

If the master boot record for the existing operating system is differentfrom that of a solution desired to be used, a user cannot use thesolution. For example, if WINDOWS VISTA is employed as the operatingsystem, a security program (i.e., BIT LOCKER) supported by WINDOWS VISTAis under control of the master boot record for WINDOWS VISTA only. Inthis case, a solution using master boot records other than the masterboot record for the exclusive use of WINDOWS VISTA cannot be usedtogether with the BIT LOCKER.

SUMMARY OF THE INVENTION

Aspects of the present invention to provide a storage medium, a computersystem having the same, and a booting method of the computer system, inwhich different operating systems can be booted through different masterboot records. Aspects of the present invention also provide a storagemedium, a computer system having the same, and a booting method of thecomputer system, in which a recovery solution is easily executable undera WINDOWS operating system.

According to an aspect of the present invention, there is provided astorage medium implemented by at least one computer. The storage mediumincludes a first sector to store a first master boot record including anexecution code allowing the at least one computer to grasp commandinformation and to implement a preset control according to the graspedcommand information, a first data storage region to store a first datafile for booting, a second sector to store a second master boot recordallowing the at least one computer to boot based on the first data file,a second data storage region to store a second data file for booting,and a third sector to store a third master boot record allowing the atleast one computer to boot based on the second data file.

In accordance with an aspect of the present invention, a computer systemis provided. The computer system includes a user selection unit toreceive a user selection signal, a storage medium comprising a firstdata storage region to store a first operating system, and a second datastorage region to store a second operating system different from thefirst operating system, and a controller to selectively control thefirst operating system or the second operating system to be bootedaccording to the user selection signal.

In accordance with an aspect of the present invention a booting methodof a computer system having a first operating system using a firstmaster boot record and a second operating system using a second masterboot record different from the first master boot record is provided. Thebooting method includes determining whether a user selection signal isreceived to selectively booting either the first operating system or thesecond operating system, selectively loading the first master bootrecord or the second master boot record according to whether the userselection signal is received, and booting the first operating system orthe second operating system according to the loaded master boot record.

In accordance with an aspect of the present invention a storage mediumimplemented by at least one computer is provided. The storage mediumincludes a first data storage region to store a first data file forbooting, a second data storage region to store a second data file forbooting, and a sector to store a master boot record including anexecution code selectively controlling the at least one computer to bootaccording to the first data file or the second data file.

In accordance with an aspect of the present invention a booting methodof a computer system having a first operating system using a firstmaster boot record and a second operating system using a second masterboot record different from the first master boot record is provided. Thebooting method includes selectively loading the first master boot recordor the second master boot record according to a user selection signal,and booting the first operating system or the second operating systemaccording to the loaded master boot record.

Other aspects, advantages, and salient features of the invention willbecome apparent to those skilled in the art from the following detaileddescription, which, taken in conjunction with the annexed drawings,discloses exemplary embodiments of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

These and/or other aspects and advantages of the invention will becomeapparent and more readily appreciated from the following description ofthe embodiments, taken in conjunction with the accompanying drawings ofwhich:

FIG. 1 is a schematic diagram of a storage medium with a master bootrecord according to an embodiment of the present invention;

FIG. 2 is a control block diagram of a computer system according to anembodiment of the present invention, having the storage medium of FIG.1; and

FIG. 3 is a control flowchart to explain a booting method of thecomputer system in FIG. 2.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

Reference will now be made in detail to the present embodiments of thepresent invention, examples of which are illustrated in the accompanyingdrawings, wherein like reference numerals refer to the like elementsthroughout. The embodiments are described below in order to explain thepresent invention by referring to the figures.

FIG. 1 is a schematic diagram of a storage medium 100 with a master bootrecord according to an embodiment of the present invention. The storagemedium 100 shown in FIG. 1 is a hard disk drive of a computer system. Asshown, the hard disk drive 100 is divided into a plurality of sectors110, 120, and 130 (i.e., a storage regions), and the sectors 110, 120,and 130 respectively store different information.

Referring to FIG. 1, the storage medium 100 includes sectors 110, 120and 130 to store the master boot records MBR 1, MBR 2 and MBR 3,respectively, and first and second data storage regions 140 and 150 tostore first and second data files 141 and 151 for booting. The sectorand the data storage regions are named for convenience according to datastored in the storage medium 100, but it is noted that the scopesthereof are not limited thereto.

A first sector 110 stores a first master boot record MBR 1, and thefirst master boot record MBR 1 includes an execution code 111 and afirst partition table 113. The execution code 111 corresponds to aprogram that grasps certain command information. The execution code 111is executed when the first master boot record MBR 1 is read, and graspsthe command information, thereby performing a preset control based onthe command information. In this embodiment, the execution code selectsa master boot record to be read after the first master boot record MBR1, such that booting is implemented according to the selected masterboot record. In the first partition table 113, partition information ofa first data file 141 is set to an active partition so that the bootingcan be implemented using the first data file 141.

A second sector 120 stores a second master boot record MBR 2, and thesecond master boot record MBR 2 includes a first boot code 121 thatallows the booting to be implemented on the basis of the first data file141. That is, when the booting is implemented on the basis of the firstdata file 141, the first partition table 113 of the first master bootrecord MBR 1 and the first boot code 121 of the second master bootrecord MBR 2 are read by the execution code 111.

A third sector 130 stores a third master boot record MBR 3, and thethird master boot record MBR 3 includes a second boot code 131 and asecond partition table 133. The second boot code 131 and the secondpartition table 133 allow the booting to be implemented according to asecond data file 151. In the second partition table 133, partitioninformation of a second data file 151 is set to an active partition sothat the booting can be implemented using the second data file 151.

The first data file 141 of the first data storage region 140 may includean operating system from the MICROSOFT WINDOWS series (such as WINDOWSVISTA). The operating system controls management and allocation ofresources of the computer system, and execution of application programs,thereby creating an environment that allows a user to use the computersystem and storing various applications and information. The second datafile 151 of the second data storage region 150 includes a differentoperating system from that included in the first data file 141. In thisembodiment, the second data file 151 includes a recovery operatingsystem for a recovery solution. The recovery operating system is bootedusing a different master boot record from that of the operating systemstored in the first data storage region 140 (for example, from theWINDOWS VISTA operating system stored in the first data storage region140). However, it is understood that aspects of the present inventionare not limited thereto. For example, the second data storage region 150may be a virtual space (i.e., logical data space) generated for therecovery operating system. In this case, the recovery operating systemmay be stored in an additional storage medium (e.g., an optical diskdrive) physically separated from the storage medium 100.

As described, the storage medium 100 stores the plurality of operatingsystems, and the respective master boot records to boot up the operatingsystems. In this embodiment, the first master boot record MBR 1 of thestorage medium 100 stores the execution code 111, as opposed to the bootcode for booting. Therefore, the execution code 111 is first loaded whenthe booting starts to load the data from the storage medium 100. Theloaded execution code 111 selects the master boot record to boot thefirst operating system or the second operating system. Here, the bootcode, which is conventionally stored in the first master boot record MBR1, is stored in the second master boot code MBR 2. That is,conventionally, the operating system (such as WINDOWS) was bootedaccording to the master boot record stored in the first sector of thestorage medium. On the other hand, the recovery solution, which uses themaster boot record other than the master boot record stored in the firstsector, cannot be booted up by the recovery operating system even thoughthe recovery operating system is stored in the hard disk drive or thelike storage media. Accordingly, the operation of the recovery solutioncannot be used conventionally.

However, according to aspects of the present invention, the operatingsystem can be selectively booted by the execution code 111 stored in thefirst master boot record MBR 1. Thus, the recovery solution is freelyusable without colliding with the prior boot. Furthermore, the partitiontable 113 for the existing boot is used as is without change, andtherefore there is no collision between different operating systems.Also, the independent partition table 133 for the recovery operatingsystem is provided so that protection of the program can be improved.

The storage medium 100 may include a plurality of other data regions(not shown). Such data regions may store various system files (e.g.,“io.sys,” “msdos.sys,” “command.com,” etc.) used to boot the operatingsystem.

The foregoing indexes and labels (MBR 2, MBR 3, second sector, thirdsector, etc.) are used for the mater boot records and the sectors forconvenience of description, and do not limit aspects of the presentinvention to certain locations of the storage medium. Here, the locationof the master boot record may vary according to a capacity and utilityof the storage medium. For example, if the existing master boot recordsare stored in the first through third sectors, the second and thirdmaster boot records according to other aspects may be stored in fourthand fifth sectors, respectively.

FIG. 2 is a control block diagram of a computer system according to anembodiment of the present invention, having the storage medium ofFIG. 1. As shown, the computer system includes the storage medium 100, auser selection unit 200, a memory 400, and a controller 300 to controlthe storage medium 100, the user selection unit 200, and the memory 400.The storage medium 100 illustrated in FIG. 2 is similar to the storagemedium 100 illustrated in FIG. 1, and thus repetitive descriptionsthereof will be avoided.

The memory 400 may be a random access memory (RAM) or the like, andstores data from the storage medium 100 and the controller 300.Hereinafter, “reading the data” and “loading the data” refer to storingcertain data in the memory 400.

The user selection unit 200 is a user interface to receive a selectionsignal from a user. For example, the user selection unit 200 may receivethe selection signal from a keyboard, a button, a mouse, a touch screen,etc., provided in the computer system. Also, the user selection unit 200may include an electronic interface to send the controller 300 a user'sselection signal generated through a physical interface. Thus, a usermay either select the general operating system (such as WINDOWS VISTA)or the recovery solution to be booted up. As an example, if there is anyselection signal input through the user selection unit 200, the recoverysolution is booted. Otherwise (i.e., if there is no input of theselection signal), the general operating system is booted. At this time,a user may generate the selection signal by pressing a certain operationkey (e.g., “F4” or “F7”) of a keyboard. However, it is understood thataspects of the present invention are not limited to such a bootingaccording to whether a user selection signal is input. For example,alternatively, the selection signals may be individually input to selectthe operating systems, respectively. Also, if there are three or moreoperating systems, three operating systems may be booted according to apredetermined booting priority or a certain operating system may be setup to be first booted.

The controller 300 controls either of the first operating system or thesecond operating system to be booted according to whether a user inputsthe selection signal and/or according to the input selection signal. Thecontroller 300 may be a basic input output system (BIOS), and includes acontrol module where a flash memory storing BIOS data and a centralprocessing unit (not shown) communicate with each other to control theBIOS data. The controller 300 mainly controls initial booting when thecomputer system is turned on.

During the booting of the computer system, the BIOS data stored in theflash memory is loaded to the memory 400 after a power on self test(POST). Before starting the booting based on the BIOS, a waiting time isgiven to allow a user to set up the BIOS data, a boot sequence, etc.During the waiting time, a user may select a booting path. Thecontroller 300 controls the selection signal to be stored as commandinformation 301 when receiving the selection signal through the userselection unit 200. Here, the command information 301 may be stored in abuilt-in memory, a main memory, a separate memory, an external memory,etc. The command information 301 corresponds to a flag signal to informthe storage medium 100 that a user selects the booting based on therecovery solution.

After all data is loaded from a BIOS read only memory (ROM), systemfiles are loaded from the hard disk drive. At this time, the operatingsystem starts to be booted. The controller 300 reads the first masterboot record MBR 1 from the first sector 110 of the storage medium 100and controls the execution code 111 included in the first master bootrecord MBR 1 to be executed. The execution code 111 is executed todetermine whether the command information 301 exists in the controller300, and selects the next master boot record to be loaded to the memory400 according to the command information 301.

If the command information 301 exists in the controller 300, theexecution code 111 reads the third master boot record MBR 3 from thethird sector 130. When the third master boot record MBR 3 is loaded, therecovery operating system stored in the second data storage region 150is booted depending on the second boot code 131 and the second partitiontable 133. If the command information 301 does not exist in thecontroller 300, the execution code 111 reads the first partition table113 from the first master boot record MBR 1 stored in the first sector110 and the first boot code 121 from the second master boot record MBR 2stored in the second sector 120.

As an example, WINDOWS VISTA supports BIT LOCKER as a security solution.BIT LOCKER should communicate with trusted platform modules (TPM) tostrengthen protection of the system files before booting the operatingsystem. Such communication is performed through the first boot code 121provided by WINDOWS VISTA. That is, the first boot code 121 is employedfor communication with the TPM when BIT LOCKER is used. In this case, itwas conventionally impossible to use the recovery solution that uses itsown master boot record. Further, in the case that a network switchingunit is used as a security program, the network switching unit uses acertain boot code supported by WINDOWS, so that it was conventionallyimpossible to use the recovery solution. These problems are solved bythe execution code 111 and the selection of the booting path through theexecution code 111. Thus, a desired operating system can be bootedwithout considering a collision between the operation systems.

FIG. 3 is a control flowchart to explain a booting method of thecomputer system in FIG. 2 according to an embodiment of the presentinvention is as follows. Referring to FIG. 3, a user inputs a selectionsignal to execute a recovery solution before the booting is implementedby the controller 300 in operation S10. If the user inputs the selectionsignal through the user selection unit 200 (operation S10), thecontroller 300 controls the selection signal to be stored as the commandinformation 301 in operation S20.

If there is no input of the selection signal (operation S10) or afterthe command information 301 is stored, the controller 300 loads thefirst master boot record MBR 1 from the first sector 110 of the storagemedium 100 and executes the execution code to start booting theoperating system in operation S30.

The execution code 111 is executed and determines whether there thecommand information 301 is stored in operation S40. If the commandinformation 301 is stored due to the selection signal from a user(operation S20), the execution code 111 loads the third master bootrecord MBR 3 from the third sector 130 to thereby run the recoverysolution in operation S50. When the second boot code 131 and the secondpartition table 133 are read from the third master boot record MBR 3,the recovery operating system from the second data storage region 150 isbooted and, thus, the recovery solution is run in operation S60.

On the other hand, if there is no command information 301, the executioncode 111 reads the first partition table 113 from the first master bootrecord MBR 1 and the first boot code 121 from the second master bootrecord MBR 2, thereby forming a new master boot record in operation S70.Then, the operating system stored in the first data storage region 140(for example, a WINDOWS operating system) is booted according to the newmaster boot record in operation S80. If the recovery operating system iscompletely booted, the operations (operations S70 and S80) for bootingthe first operating system proceed automatically. However, it isunderstood that aspects of the present invention are not limitedthereto. For example, alternatively, if the booting of the recoveryoperating system is completed, a user may select whether to boot thefirst operating system. In this case, the computer system may displayuser interface (UI) information to check whether a user wants to reboot.Here, a user may selectively reboot or shut down the computer system.

It is understood that the first operating system is not limited toWINDOWS, and may include Linux, Unix or the like, and the secondoperating system is not limited to the recovery operating system.Aspects of the present invention addresses a problem that a separateoperation cannot be run when selected before a general booting because amaster boot record is not shared. In other words, aspects of the presetinvention are not limited to a certain operating system and are appliedto various operating systems that do not share one master boot record(i.e., respectively use different master boot records).

As described above, aspects of the present invention provide a storagemedium, a computer system having the same, and a booting method of thecomputer system, in which different operating systems booted throughdifferent master boot records are usable. Furthermore, aspects of thepresent invention provide a storage medium, a computer system having thesame, and a booting method of the computer system, in which a recoverysolution is easily executable under an operating system such as WINDOWS.Also, aspects of the present invention provide a storage medium, acomputer system having the same, and a booting method of the computersystem, in which a recovery solution is easily executable while using anetwork switching unit.

Aspects of the present invention can also be embodied ascomputer-readable codes on a computer-readable recording medium. Also,codes and code segments to accomplish the present invention can beeasily construed by programmers skilled in the art to which the presentinvention pertains. The computer-readable recording medium is any datastorage device that can store data which can be thereafter read by acomputer system or computer code processing apparatus. Examples of thecomputer-readable recording medium include read-only memory (ROM),random-access memory (RAM), CD-ROMs, magnetic tapes, floppy disks, andoptical data storage devices. The computer-readable recording medium canalso be distributed over network-coupled computer systems so that thecomputer-readable code is stored and executed in a distributed fashion.Aspects of the present invention may also be realized as a data signalembodied in a carrier wave and comprising a program readable by acomputer and transmittable over the Internet. 100421 Although a fewembodiments of the present invention have been shown and described, itwould be appreciated by those skilled in the art that changes may bemade in this embodiment without departing from the principles and spiritof the invention, the scope of which is defined in the claims and theirequivalents.

1. A storage medium implemented by at least one computer, the storagemedium comprising: a first sector to store a first master boot recordincluding an execution code allowing the at least one computer to graspcommand information and to implement a preset control according to thegrasped command information; a first data storage region to store afirst data file for booting; a second sector to store a second masterboot record allowing the at least one computer to boot based on thefirst data file; a second data storage region to store a second datafile for booting; and a third sector to store a third master boot recordallowing the at least one computer to boot based on the second datafile.
 2. The storage medium as claimed in claim 1, wherein the firstdata file comprises a WINDOWS operating system, and the second data filecomprises a recovery operating system.
 3. The storage medium as claimedin claim 2, wherein the first data file comprises WINDOWS VISTA.
 4. Thestorage medium as claimed in claim 1, wherein the execution codecontrols the at least one computer to load the third master boot recordwhen the command information is grasped.
 5. The storage medium asclaimed in claim 1, wherein: the first master boot record comprises apartition table to allow the at least one computer to boot based on thefirst data file; the second master boot record comprises a boot code toallow the at least one computer to boot based on the first data file;and the execution code controls the at least one computer to load thepartition table from the first master boot record and the boot code fromthe second master boot record when the command information is notgrasped.
 6. The storage medium as claimed in claim 1, wherein the presetcontrol loads the second master boot record or the third master bootrecord according to the grasped command information.
 7. The storagemedium as claimed in claim 1, wherein the command information controlsthe at least one computer to load the second master boot record or thethird master boot record according to a selection signal received from auser to select between the first data file and the second data file. 8.A computer system comprising: a user selection unit to receive a userselection signal; a storage medium comprising a first data storageregion to store a first operating system, and a second data storageregion to store a second operating system different from the firstoperating system; and a controller to selectively control the firstoperating system or the second operating system to be booted accordingto the user selection signal.
 9. The computer system as claimed in claim8, wherein the controller controls the user selection signal to bestored as command information.
 10. The computer system as claimed inclaim 8, wherein the storage medium comprises: a first sector to store afirst master boot record including an execution code to allow thecontroller to grasp command information; a second sector to store asecond master boot record to implement booting based on the firstoperating system; and a third sector to store a third master boot recordto implement booting based on the second operating system.
 11. Thecomputer system as claimed in claim 10, wherein the controller reads thefirst master boot record to execute the execution code.
 12. The computersystem as claimed in claim 8, wherein the first operating system is aWINDOWS operating system, and the second operating system is a recoveryoperating system.
 13. The computer system as claimed in claim 10,wherein the controller loads the third master boot record according tothe execution code when the command information is grasped.
 14. Thecomputer system as claimed in claim 10, wherein: the first master bootrecord comprises a partition table to implement the booting based on thefirst operating system; the second master boot record comprises a bootcode to implement the booting based on the first operating system; andthe controller to load the partition table from the first master bootrecord and the boot code from the second master boot record according tothe execution code when the command information is not grasped.
 15. Thecomputer system as claimed in claim 8, wherein the first operatingsystem supports a security program corresponding to BIT LOCKER or anetwork switching unit.
 16. The computer system as claimed in claim 8,wherein the storage medium comprises a hard disk drive.
 17. The computersystem as claimed in claim 8, wherein the controller comprises a basicinput output system (BIOS).
 18. The computer system as claimed in claim8, wherein the controller controls the first operating system toautomatically boot after the second operating system is completelybooted.
 19. The computer system as claimed in claim 8, wherein thecontroller controls the first operating system to boot or a shutdown,according to a user selection, after the second operating system iscompletely booted.
 20. A booting method of a computer system comprisinga first operating system using a first master boot record and a secondoperating system using a second master boot record different from thefirst master boot record, the booting method comprising: determiningwhether a user selection signal is received to selectively bootingeither the first operating system or the second operating system;selectively loading the first master boot record or the second masterboot record according to whether the user selection signal is received;and booting the first operating system or the second operating systemaccording to the loaded master boot record.
 21. The booting method asclaimed in claim 20, further comprising storing the user selectionsignal as command information.
 22. The booting method as claimed inclaim 21, wherein the determining of whether the user selection signalis received comprises executing a predetermined execution code to graspthe command information.
 23. The booting method as claimed in claim 20,wherein the first operating system is a WINDOWS operating system, andthe second operating system is a recovery operating system.
 24. Thebooting method as claimed in claim 22, further comprising loading thesecond master boot record when the execution code grasps the commandinformation.
 25. The booting method as claimed in claim 22, wherein: thefirst master boot record comprises a partition table and the executioncode to boot the first operating system; the computer system comprises athird master boot record comprising a boot code to boot the firstoperating system; and the execution code loads the partition table fromthe first master boot record and the boot code from the third masterboot record when the command information is not grasped.
 26. The bootingmethod as claimed in claim 20, further comprising booting the firstoperating system when the booting of the second operating system iscompleted.
 27. The booting method as claimed in claim 22, furthercomprising loading the first master boot record when the execution codedoes not grasp the command information.
 28. A storage medium implementedby at least one computer, the storage medium comprising: a first datastorage region to store a first data file for booting; a second datastorage region to store a second data file for booting; and a sector tostore a master boot record including an execution code selectivelycontrolling the at least one computer to boot according to the firstdata file or the second data file.
 29. A booting method of a computersystem comprising a first operating system using a first master bootrecord and a second operating system using a second master boot recorddifferent from the first master boot record, the booting methodcomprising: selectively loading the first master boot record or thesecond master boot record according to a user selection signal; andbooting the first operating system or the second operating systemaccording to the loaded master boot record.
 30. The booting method asclaimed in claim 29, wherein the selective loading of the first masterboot record or the second master boot record comprises: determiningwhether the user selection signal is received; loading the first masterboot record if the user selection signal is not received; and loadingthe second master boot record if the user selection signal is received.